package com.arpa.wms.domain.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * @author rfwang
 * @date 2021-09-08

 */
@Data
@ApiModel(value="淘宝订单", description="淘宝订单")
public class TbOrderDto {

    @ApiModelProperty(value = "需要返回的字段列表，多个字段用半角逗号分隔，可选值为返回示例中能看到的所有字段。rx_audit_status=0,处方药未审核")
    private String fields;

    @ApiModelProperty(value = "查询三个月内交易创建时间开始。格式:yyyy-MM-dd HH:mm:ss")
    private String startCreated;

    @ApiModelProperty(value = "查询交易创建时间结束。格式:yyyy-MM-dd HH:mm:ss")
    private String endCreated;

    @ApiModelProperty(value = "交易状态（查看可选值），默认查询所有交易状态的数据，除了默认值外每次只能查询一种状态。")
    private String status;

    @ApiModelProperty(value = "买家昵称")
    private String buyerNick;

    @ApiModelProperty(value = "交易类型列表")
    private String type;

    @ApiModelProperty(value = "可选值有ershou(二手市场的订单）,service（商城服务子订单）mark（双十一大促活动异常订单）作为扩展类型筛选只能做单个ext_type查询，不能全部查询所有的ext_type类型")
    private String rateStatus;

    @ApiModelProperty(value = "卖家对交易的自定义分组标签，目前可选值为：time_card（点卡软件代充），fee_card（话费软件代充）")
    private String tag;

    @ApiModelProperty(value = "页码。默认值:1，可填整数，通过传入page_no来控制获取的页数，总页数=total_results÷page_size")
    private Long pageNum;

    @ApiModelProperty(value = "页码。默认值:1，可填整数，通过传入page_no来控制获取的页数，总页数=total_results÷page_size")
    private Long pageNo;

    @ApiModelProperty(value = "每页条数。 默认值:40;最大值:100，可填整数。通过page_no和page_size组合多次调用实现翻页获取全量数据。")
    private Long pageSize;

    @ApiModelProperty(value = "是否启用has_next的分页方式，如果指定true,则返回的结果中不包含总记录数，但是会新增一个是否存在下一页的的字段，通过此种方式获取增量交易，接口调用成功率在原有的基础上有所提升。")
    private String useHasNext;

    @ApiModelProperty(value = "买家的openId")
    private String buyerOpenId;

    @ApiModelProperty(value = "授权token")
    private String accessToken;

    @ApiModelProperty(value = "淘宝交易ID")
    private Integer tid;

    @ApiModelProperty(value = "拆单子订单列表，对应的数据是：子订单号的列表。可以不传，但是如果传了则必须符合传递的规则。子订单必须是操作的物流订单的子订单的真子集")
    private List<Integer> subTid;

    @ApiModelProperty(value = "表明是否是拆单，默认值0，1表示拆单")
    private Integer isSplit;

    @ApiModelProperty(value = "运单号.具体一个物流公司的真实运单号码。淘宝官方物流会校验，请谨慎传入；")
    private String outSid;

    @ApiModelProperty(value = "商家的IP地址")
    private String sellerIp;

    @ApiModelProperty(value = "appkey未对接oaid加密，则忽略该字段。对接oaid加密情况下，（收货人+手机号+座机+收货地址+create）5个字段组合成oaid，原始订单上座机为空也满足条件。传true，代表必须返回oaid，生成不了就报isv.oaid-field-miss错误；默认或者传false，满足生成条件则返回oaid，否则为空")
    private String include_oaid;

    @ApiModelProperty(value = "POP分配给应用的client_id")
    private String clientId;

    @ApiModelProperty(value = "UNIX时间戳，单位秒，需要与拼多多服务器时间差值在10分钟内")
    private String timestamp;

    @ApiModelProperty(value = "响应格式，即返回数据的格式，JSON或者XML（二选一），默认JSON，注意是大写")
    private String dataType;

    @ApiModelProperty(value = "API协议版本号，默认为V1，可不填")
    private String version;

    @ApiModelProperty(value = "API输入参数签名结果，签名算法参考开放平台接入指南第三部分底部")
    private String sign;

    @ApiModelProperty(value = "发货状态，1：待发货，2：已发货待签收，3：已签收 5：全部")
    private Integer orderStatus;

    @ApiModelProperty(value = "售后状态 1：无售后或售后关闭，2：售后处理中，3：退款中，4： 退款成功 5：全部")
    private Integer refundStatus;

    @ApiModelProperty(value = "成交时间开始时间的时间戳")
    private Long startConfirmAt;

    @ApiModelProperty(value = "成交时间结束时间的时间戳")
    private Long endConfirmAt;

    @ApiModelProperty(value = "订单类型 0-普通订单 ，1- 定金订单")
    private Integer tradeType;

    @ApiModelProperty(value = "物流公司编码")
    private long logisticsId;

    @ApiModelProperty(value = "订单号")
    private String orderSn;

    @ApiModelProperty(value = "订单状态：1-已打单")
    private Integer orderState;


    @ApiModelProperty(value = "最后更新时间开始时间的时间戳")
    private long startUpdatedAt;

    @ApiModelProperty(value = "最后更新时间结束时间的时间戳")
    private long endUpdatedAt;

    @ApiModelProperty(value = "订单号")
    private String orderSns;

    @ApiModelProperty(value = "发货个性内容")
    private String feature;

    @ApiModelProperty(value = "退货地址的id，不填则取商家默认地址")
    private String refundAddressId;

    @ApiModelProperty(value = "快递单号")
    private String trackingNumber;

    @ApiModelProperty(value = "修改发货模式")
    private Integer redeliveryType;

    @ApiModelProperty(value = "货主code")
    private String shipmentCode;

    @ApiModelProperty(value = "货主名称")
    private String shipmentName;

    @ApiModelProperty(value = "平台")
    private String platformCode;

    @ApiModelProperty(value = "平台名称")
    private String platformName;

    @ApiModelProperty(value = "店铺")
    private String shopCode;

    @ApiModelProperty(value = "店铺名称")
    private String shopName;

    @ApiModelProperty(value = "开始时间")
    private String captureGmtStart;

    @ApiModelProperty(value = "结束时间")
    private String captureGmtEnd;

    @ApiModelProperty(value = "创建人")
    private String createdBy;

    @ApiModelProperty(value = "创建人名称")
    private String createdName;

    @ApiModelProperty(value = "店铺昵称")
    private String shopNick;

    @ApiModelProperty(value = "店铺主页地址")
    private String shopUrl;

    @ApiModelProperty(value = "物流公司代码.如\"POST\"就代表中国邮政,\"ZJS\"就代表宅急送 ，通过接口 \"查询物流公司列表\"   获取。")
    private String companyCode;

    @ApiModelProperty(value = "卖家交易备注旗帜，   可选值为：0(灰色), 1(红色), 2(黄色), 3(绿色), 4(蓝色), 5(粉红色)，说明：如果不想加旗帜，则传空串")
    private String flag;

    @ApiModelProperty(value = "卖家交易备注。最大长度: 1000个字节  ，说明：如果不想加旗帜，则传空串")
    private String memo;

    @ApiModelProperty(value = "接口返回所增加的解密参数，说明：下单成功时，就会生成对应的oaid。除非该笔订单修改地址，" +
            "否则oaid不会变、长期有效。订单修改地址后，旧地址对应的oaid失效。请不要用旧的oaid（电子面单取号、解密、发短信等操作），否则业务会有影响")
    private String oaid;

    @ApiModelProperty(value = "应用场景id，一般是1007（代发货）或者1006（手工单发货）")
    private String scene;





}
